#include<stdio.h>
#include<unistd.h>
#include<string.h>

#include"process.h"

#define NUM 101
#define STYLE '#'


//verison2
void FlushProcess(double total, double current)
{

    char buffer[NUM];
    memset(buffer,0,sizeof(buffer));

    const char *lable = "|/-\\";
    int len = strlen(lable);

    static int cnt = 0;

    int num = (int)(current*100)/total;
    int i = 0;
    for(;i<num;i++)
    {
        buffer[i] = STYLE;
    }

    double rate = current/total;
    cnt%=len;

    printf("[%-100s][%.2lf%%][%c]\r",buffer,rate*100,lable[cnt]);
    cnt++;
    fflush(stdout);
}

void process_v1()
{
    char buffer[NUM];
    memset(buffer,0,sizeof(buffer));

    const char *lable = "|/-\\";
    int len = strlen(lable);
    int cnt = 0;
    while(cnt<=100)
    {
        printf("[%-100s][%d%%][%c]\r",buffer,cnt,lable[cnt%len]);
        fflush(stdout);
        buffer[cnt] = STYLE;
        cnt++;
       // usleep(30000);
    }

    printf("\n");
}
